/*

Boost Software License - Version 1.0 - August 17th, 2003

Permission is hereby granted, free of charge, to any person or organization
obtaining a copy of the software and accompanying documentation covered by
this license (the "Software") to use, reproduce, display, distribute,
execute, and transmit the Software, and to prepare derivative works of the
Software, and to permit third-parties to whom the Software is furnished to
do so, all subject to the following:

The copyright notices in the Software and this entire statement, including
the above license grant, this restriction and the following disclaimer,
must be included in all copies of the Software, in whole or in part, and
all derivative works of the Software, unless such copies or derivative
works are solely in the form of machine-executable object code generated by
a source language processor.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.

*/
module derelict.ode.functions;

private
{
    import derelict.ode.types;
    import core.stdc.stdio;
    import core.stdc.config;
}

extern(C)
{
    alias nothrow char* function() da_dGetConfiguration;
    alias nothrow int function(const(char)*) da_dCheckConfiguration;
    alias nothrow void function(dGeomID) da_dGeomDestroy;
    alias nothrow void function(dGeomID,void*) da_dGeomSetData;
    alias nothrow void* function(dGeomID) da_dGeomGetData;
    alias nothrow void function(dGeomID,dBodyID) da_dGeomSetBody;
    alias nothrow dBodyID function(dGeomID) da_dGeomGetBody;
    alias nothrow void function(dGeomID,dReal,dReal,dReal) da_dGeomSetPosition;
    alias nothrow void function(dGeomID,in dMatrix3) da_dGeomSetRotation;
    alias nothrow void function(dGeomID,in dQuaternion) da_dGeomSetQuaternion;
    alias nothrow dReal* function(dGeomID) da_dGeomGetPosition;
    alias nothrow void function(dGeomID,dVector3) da_dGeomCopyPosition;
    alias nothrow dReal* function(dGeomID)  da_dGeomGetRotation;
    alias nothrow void function(dGeomID,dMatrix3) da_dGeomCopyRotation;
    alias nothrow void function(dGeomID,dQuaternion) da_dGeomGetQuaternion;
    alias nothrow void function(dGeomID,dReal*) da_dGeomGetAABB;
    alias nothrow int function(dGeomID) da_dGeomIsSpace;
    alias nothrow dSpaceID function(dGeomID) da_dGeomGetSpace;
    alias nothrow int function(dGeomID) da_dGeomGetClass;
    alias nothrow void function(dGeomID,c_ulong) da_dGeomSetCategoryBits;
    alias nothrow void function(dGeomID,c_ulong) da_dGeomSetCollideBits;
    alias nothrow c_ulong function(dGeomID) da_dGeomGetCategoryBits;
    alias nothrow c_ulong function(dGeomID) da_dGeomGetCollideBits;
    alias nothrow void function(dGeomID) da_dGeomEnable;
    alias nothrow void function(dGeomID) da_dGeomDisable;
    alias nothrow int function(dGeomID) da_dGeomIsEnabled;
    alias nothrow int function(dGeomID, int, int, void*, int*) da_dGeomLowLevelControl;
    alias nothrow void function(dGeomID, dReal, dReal, dReal, dVector3) da_dGeomGetRelPointPos;
    alias nothrow void function(dGeomID, dReal, dReal, dReal, dVector3) da_dGeomGetPosRelPoint;
    alias nothrow void function(dGeomID, dReal, dReal, dReal, dVector3) da_dGeomVectorToWorld;
    alias nothrow void function(dGeomID, dReal, dReal, dReal, dVector3) da_dGeomVectorFromWorld;
    alias nothrow void function(dGeomID,dReal,dReal,dReal) da_dGeomSetOffsetPosition;
    alias nothrow void function(dGeomID,in dMatrix3) da_dGeomSetOffsetRotation;
    alias nothrow void function(dGeomID,in dQuaternion) da_dGeomSetOffsetQuaternion;
    alias nothrow void function(dGeomID,dReal,dReal,dReal) da_dGeomSetOffsetWorldPosition;
    alias nothrow void function(dGeomID,in dMatrix3) da_dGeomSetOffsetWorldRotation;
    alias nothrow void function(dGeomID,int dQuaternion) da_dGeomSetOffsetWorldQuaternion;
    alias nothrow void function(dGeomID) da_dGeomClearOffset;
    alias nothrow int function(dGeomID) da_dGeomIsOffset;
    alias nothrow dReal* function(dGeomID) da_dGeomGetOffsetPosition;
    alias nothrow void function(dGeomID,dVector3) da_dGeomCopyOffsetPosition;
    alias nothrow dReal* function(dGeomID) da_dGeomGetOffsetRotation;
    alias nothrow void function(dGeomID,dQuaternion) da_dGeomGetOffsetQuaternion;
    alias nothrow int function(dGeomID,dGeomID,int,dContactGeom*,int) da_dCollide;
    alias nothrow void function(dSpaceID,void*,dNearCallback) da_dSpaceCollide;
    alias nothrow void function(dGeomID,dGeomID,void*,dNearCallback) da_dSpaceCollide2;
    alias nothrow dGeomID function(dSpaceID,dReal) da_dCreateSphere;
    alias nothrow void function(dGeomID,dReal) da_dGeomSphereSetRadius;
    alias nothrow dReal function(dGeomID) da_dGeomSphereGetRadius;
    alias nothrow dReal function(dGeomID,dReal,dReal,dReal) da_dGeomSpherePointDepth;
    alias nothrow dGeomID function(dSpaceID,dReal*,uint,dReal*,uint,uint*) da_dCreateConvex;
    alias nothrow void function(dGeomID,dReal*,uint,dReal*,uint,uint*) da_dGeomSetConvex;
    alias nothrow dGeomID function(dSpaceID,dReal,dReal,dReal) da_dCreateBox;
    alias nothrow void function(dGeomID,dReal,dReal,dReal) da_dGeomBoxSetLengths;
    alias nothrow void function(dGeomID,dVector3) da_dGeomBoxGetLengths;
    alias nothrow dReal function(dGeomID,dReal,dReal,dReal) da_dGeomBoxPointDepth;
    alias nothrow dGeomID function(dSpaceID,dReal,dReal,dReal,dReal) da_dCreatePlane;
    alias nothrow void function(dGeomID,dReal,dReal,dReal,dReal) da_dGeomPlaneSetParams;
    alias nothrow void function(dGeomID,dVector4) da_dGeomPlaneGetParams;
    alias nothrow dReal function(dGeomID,dReal,dReal,dReal) da_dGeomPlanePointDepth;
    alias nothrow dGeomID function(dSpaceID,dReal,dReal) da_dCreateCapsule;
    alias nothrow void function(dGeomID,dReal,dReal) da_dGeomCapsuleSetParams;
    alias nothrow void function(dGeomID,dReal*,dReal*) da_dGeomCapsuleGetParams;
    alias nothrow dReal function(dGeomID,dReal,dReal,dReal) da_dGeomCapsulePointDepth;
    alias nothrow dGeomID function(dSpaceID,dReal,dReal) da_dCreateCylinder;
    alias nothrow void function(dGeomID,dReal,dReal) da_dGeomCylinderSetParams;
    alias nothrow void function(dGeomID,dReal*,dReal*) da_dGeomCylinderGetParams;
    alias nothrow dGeomID function(dSpaceID,dReal) da_dCreateRay;
    alias nothrow void function(dGeomID,dReal) da_dGeomRaySetLength;
    alias nothrow dReal function(dGeomID) da_dGeomRayGetLength;
    alias nothrow void function(dGeomID,dReal,dReal,dReal,dReal,dReal,dReal) da_dGeomRaySet;
    alias nothrow void function(dGeomID,dVector3,dVector3) da_dGeomRayGet;
    alias nothrow void function(dGeomID,int,int) da_dGeomRaySetParams;
    alias nothrow void function(dGeomID,int*,int*) da_dGeomRayGetParams;
    alias nothrow void function(dGeomID,int) da_dGeomRaySetClosestHit;
    alias nothrow int function(dGeomID) da_dGeomRayGetClosestHit;
    alias nothrow dGeomID function(dSpaceID) da_dCreateGeomTransform;
    alias nothrow void function(dGeomID,dGeomID) da_dGeomTransformSetGeom;
    alias nothrow dGeomID function(dGeomID) da_dGeomTransformGetGeom;
    alias nothrow void function(dGeomID,int) da_dGeomTransformSetCleanup;
    alias nothrow int function(dGeomID) da_dGeomTransformGetCleanup;
    alias nothrow void function(dGeomID,int) da_dGeomTransformSetInfo;
    alias nothrow int function(dGeomID) da_dGeomTransformGetInfo;
    alias nothrow dGeomID function(dSpaceID,dHeightfieldDataID,int) da_dCreateHeightfield;
    alias nothrow dHeightfieldDataID function() da_dGeomHeightfieldDataCreate;
    alias nothrow void function(dHeightfieldDataID) da_dGeomHeightfieldDataDestroy;
    alias nothrow void function(dHeightfieldDataID,void*,dHeightfieldGetHeight,dReal,dReal,int,int,dReal,dReal,dReal,int) da_dGeomHeightfieldDataBuildCallback;
    alias nothrow void function(dHeightfieldDataID,in ubyte*,int,dReal,dReal,int,int,dReal,dReal,dReal,int) da_dGeomHeightfieldDataBuildByte;
    alias nothrow void function(dHeightfieldDataID,in short*,int,dReal,dReal,int,int,dReal,dReal,dReal,int) da_dGeomHeightfieldDataBuildShort;
    alias nothrow void function(dHeightfieldDataID,in float*,int,dReal,dReal,int,int,dReal,dReal,dReal,int) da_dGeomHeightfieldDataBuildSingle;
    alias nothrow void function(dHeightfieldDataID,in double*,int,dReal,dReal,int,int,dReal,dReal,dReal,int) da_dGeomHeightfieldDataBuildDouble;
    alias nothrow void function(dHeightfieldDataID,dReal,dReal) da_dGeomHeightfieldDataSetBounds;
    alias nothrow void function(dGeomID,dHeightfieldDataID) da_dGeomHeightfieldSetHeightfieldData;
    alias nothrow dHeightfieldDataID function(dGeomID) da_dGeomHeightfieldGetHeightfieldData;
    alias nothrow void function(in dVector3,in dVector3,in dVector3,in dVector3,dVector3,dVector3) da_dClosestLineSegmentPoints;
    alias nothrow int function(in dVector3,in dMatrix3,in dVector3,in dVector3,in dMatrix3,in dVector3) da_dBoxTouchesBox;
    alias nothrow int function(in dVector3,in dMatrix3,in dVector3,in dVector3,in dMatrix3,in dVector3,dVector3,dReal*,int*,int,dContactGeom*,int) da_dBoxBox;
    alias nothrow void function(dGeomID,ref dReal[6]) da_dInfiniteAABB;
    alias nothrow int function(in dGeomClass*) da_dCreateGeomClass;
    alias nothrow void* function(dGeomID) da_dGeomGetClassData;
    alias nothrow dGeomID function(int) da_dCreateGeom;
    alias nothrow void function(int,int,dColliderFn) da_dSetColliderOverride;
    alias nothrow dSpaceID function(dSpaceID) da_dSimpleSpaceCreate;
    alias nothrow dSpaceID function(dSpaceID) da_dHashSpaceCreate;
    alias nothrow dSpaceID function(dSpaceID,in dVector3,in dVector3,int) da_dQuadTreeSpaceCreate;
    alias nothrow dSpaceID function(dSpaceID,int) da_dSweepAndPruneSpaceCreate;
    alias nothrow void function(dSpaceID) da_dSpaceDestroy;
    alias nothrow void function(dSpaceID,int,int) da_dHashSpaceSetLevels;
    alias nothrow void function(dSpaceID,int*,int*) da_dHashSpaceGetLevels;
    alias nothrow void function(dSpaceID,int) da_dSpaceSetCleanup;
    alias nothrow int function(dSpaceID) da_dSpaceGetCleanup;
    alias nothrow void function(dSpaceID,int) da_dSpaceSetSublevel;
    alias nothrow int function(dSpaceID) da_dSpaceGetSublevel;
    alias nothrow void function(dSpaceID, int) da_dSpaceSetManualCleanup;
    alias nothrow int function(dSpaceID) da_dSpaceGetManualCleanup;
    alias nothrow void function(dSpaceID,dGeomID) da_dSpaceAdd;
    alias nothrow void function(dSpaceID,dGeomID) da_dSpaceRemove;
    alias nothrow int function(dSpaceID,dGeomID) da_dSpaceQuery;
    alias nothrow void function(dSpaceID) da_dSpaceClean;
    alias nothrow int function(dSpaceID) da_dSpaceGetNumGeoms;
    alias nothrow dGeomID function(dSpaceID,int) da_dSpaceGetGeom;
    alias nothrow int function(dSpaceID) da_dSpaceGetClass;
    alias nothrow dTriMeshDataID function() da_dGeomTriMeshDataCreate;
    alias nothrow void function(dTriMeshDataID) da_dGeomTriMeshDataDestroy;
    alias nothrow void function(dTriMeshDataID,int,void*) da_dGeomTriMeshDataSet;
    alias nothrow void* function(dTriMeshDataID,int) da_dGeomTriMeshDataGet;
    alias nothrow void function(dGeomID,dMatrix4) da_dGeomTriMeshSetLastTransform;
    alias nothrow dReal* function(dGeomID) da_dGeomTriMeshGetLastTransform;
    alias nothrow void function(dTriMeshDataID,in void*,int,int,in void*,int,int) da_dGeomTriMeshDataBuildSingle;
    alias nothrow void function(dTriMeshDataID,in void*,int,int,in void*,int,int,in void*) da_dGeomTriMeshDataBuildSingle1;
    alias nothrow void function(dTriMeshDataID,in void*,int,int,in void*,int,int) da_dGeomTriMeshDataBuildDouble;
    alias nothrow void function(dTriMeshDataID,in void*,int,int,in void*,int,int,in void*) da_dGeomTriMeshDataBuildDouble1;
    alias nothrow void function(dTriMeshDataID,in dReal*,int,in dTriIndex*,int) da_dGeomTriMeshDataBuildSimple;
    alias nothrow void function(dTriMeshDataID,in dReal*,int,in dTriIndex*,int,in int*) da_dGeomTriMeshDataBuildSimple1;
    alias nothrow void function(dTriMeshDataID) da_dGeomTriMeshDataPreprocess;
    alias nothrow void function(dTriMeshDataID,ubyte**,int*) da_dGeomTriMeshDataGetBuffer;
    alias nothrow void function(dTriMeshDataID,ubyte*) da_dGeomTriMeshDataSetBuffer;
    alias nothrow void function(dGeomID,dTriCallback) da_dGeomTriMeshSetCallback;
    alias nothrow dTriCallback function(dGeomID) da_dGeomTriMeshGetCallback;
    alias nothrow void function(dGeomID,dTriArrayCallback) da_dGeomTriMeshSetArrayCallback;
    alias nothrow dTriArrayCallback function(dGeomID) da_dGeomTriMeshGetArrayCallback;
    alias nothrow void function(dGeomID,dTriRayCallback) da_dGeomTriMeshSetRayCallback;
    alias nothrow dTriRayCallback function(dGeomID) da_dGeomTriMeshGetRayCallback;
    alias nothrow void function(dGeomID,dTriTriMergeCallback) da_dGeomTriMeshSetTriMergeCallback;
    alias nothrow dTriTriMergeCallback function(dGeomID) da_dGeomTriMeshGetTriMergeCallback;
    alias nothrow dGeomID function(dSpaceID,dTriMeshDataID,dTriCallback,dTriArrayCallback,dTriRayCallback) da_dCreateTriMesh;
    alias nothrow void function(dGeomID,dTriMeshDataID) da_dGeomTriMeshSetData;
    alias nothrow dTriMeshDataID function(dGeomID) da_dGeomTriMeshGetData;
    alias nothrow void function(dGeomID,int,int) da_dGeomTriMeshEnableTC;
    alias nothrow int function(dGeomID,int) da_dGeomTriMeshIsTCEnabled;
    alias nothrow void function(dGeomID) da_dGeomTriMeshClearTCCache;
    alias nothrow dTriMeshDataID function(dGeomID) da_dGeomTriMeshGetTriMeshDataID;
    alias nothrow void function(dGeomID,int,dVector3*,dVector3*,dVector3*) da_dGeomTriMeshGetTriangle;
    alias nothrow void function(dGeomID,int,dReal,dReal,dVector3) da_dGeomTriMeshGetPoint;
    alias nothrow int function(dGeomID) da_dGeomTriMeshGetTriangleCount;
    alias nothrow void function(dTriMeshDataID) da_dGeomTriMeshDataUpdate;
    alias nothrow void function(dMessageFunction) da_dSetErrorHandler;
    alias nothrow void function(dMessageFunction) da_dSetDebugHandler;
    alias nothrow void function(dMessageFunction) da_dSetMessageHandler;
    alias nothrow dMessageFunction function() da_dGetErrorHandler;
    alias nothrow dMessageFunction function() da_dGetDebugHandler;
    alias nothrow dMessageFunction function() da_dGetMessageHandler;
    alias nothrow void function(int,const(char)*,...) da_dError;
    alias nothrow void function(int,const(char)*,...) da_dDebug;
    alias nothrow void function(int,const(char)*,...) da_dMessage;
    alias nothrow void function(dWorldID, FILE*, const(char)*) da_dWorldExportDIF;
    alias nothrow int function(in dMass*) da_dMassCheck;
    alias nothrow void function(dMass*) da_dMassSetZero;
    alias nothrow void function(dMass*,dReal,dReal,dReal,dReal,dReal,dReal,dReal,dReal,dReal,dReal) da_dMassSetParameters;
    alias nothrow void function(dMass*,dReal,dReal) da_dMassSetSphere;
    alias nothrow void function(dMass*,dReal,dReal) da_dMassSetSphereTotal;
    alias nothrow void function(dMass*,dReal,int,dReal,dReal) da_dMassSetCapsule;
    alias nothrow void function(dMass*,dReal,int,dReal,dReal) da_dMassSetCapsuleTotal;
    alias nothrow void function(dMass*,dReal,int,dReal,dReal) da_dMassSetCylinder;
    alias nothrow void function(dMass*,dReal,int,dReal,dReal) da_dMassSetCylinderTotal;
    alias nothrow void function(dMass*,dReal,dReal,dReal,dReal) da_dMassSetBox;
    alias nothrow void function(dMass*,dReal,dReal,dReal,dReal) da_dMassSetBoxTotal;
    alias nothrow void function(dMass*,dReal,dGeomID) da_dMassSetTrimesh;
    alias nothrow void function(dMass*,dReal,dGeomID) da_dMassSetTrimeshTotal;
    alias nothrow void function(dMass*,dReal) da_dMassAdjust;
    alias nothrow void function(dMass*,dReal,dReal,dReal) da_dMassTranslate;
    alias nothrow void function(dMass*,in dMatrix3) da_dMassRotate;
    alias nothrow void function(dMass*,in dMass*) da_dMassAdd;
    alias nothrow void function(dReal*,int) da_dSetZero;
    alias nothrow void function(dReal*,int,dReal) da_dSetValue;
    alias nothrow dReal function(in dReal*,in dReal*,int) da_dDot;
    alias nothrow void function(dReal*,in dReal*,in dReal*,int,int,int) da_dMultiply0;
    alias nothrow void function(dReal*,in dReal*,in dReal*,int,int,int) da_dMultiply1;
    alias nothrow void function(dReal*,in dReal*,in dReal*,int,int,int) da_dMultiply2;
    alias nothrow int function(dReal*,int) da_dFactorCholesky;
    alias nothrow void function(in dReal*,dReal*,int) da_dSolveCholesky;
    alias nothrow int function(in dReal*,dReal*,int) da_dInvertPDMatrix;
    alias nothrow int function(in dReal*,int) da_dIsPositiveDefinite;
    alias nothrow void function(dReal*,dReal*,int,int) da_dFactorLDLT;
    alias nothrow void function(in dReal*,dReal*,int,int) da_dSolveL1;
    alias nothrow void function(in dReal*,dReal*,int,int) da_dSolveL1T;
    alias nothrow void function(dReal*,in dReal*,int) da_dVectorScale;
    alias nothrow void function(in dReal*,in dReal*,dReal*,int,int) da_dSolveLDLT;
    alias nothrow void function(dReal*,dReal*,in dReal*,int,int) da_dLDLTAddTL;
    alias nothrow void function(dReal**,in int*,dReal*,dReal*,int,int,int,int) da_dLDLTRemove;
    alias nothrow void function(dReal*,int,int,int) da_dRemoveRowCol;
    alias nothrow void function(dAllocFunction) da_dSetAllocHandler;
    alias nothrow void function(dReallocFunction) da_dSetReallocHandler;
    alias nothrow void function(dFreeFunction) da_dSetFreeHandler;
    alias nothrow dAllocFunction function() da_dGetAllocHandler;
    alias nothrow dReallocFunction function() da_dGetReallocHandler;
    alias nothrow dFreeFunction function() da_dGetFreeHandler;
    alias nothrow void* function(size_t) da_dAlloc;
    alias nothrow void* function(void*,size_t,size_t) da_dRealloc;
    alias nothrow void function(void*,size_t) da_dFree;
    alias nothrow int function() da_dTestRand;
    alias nothrow c_ulong function() da_dRand;
    alias nothrow c_ulong function() da_dRandGetSeed;
    alias nothrow void function(c_ulong) da_dRandSetSeed;
    alias nothrow int function(int) da_dRandInt;
    alias nothrow dReal function() da_dRandReal;
    alias nothrow void function(in dReal*,int,int,char*,FILE*) da_dPrintMatrix;
    alias nothrow void function(dReal,int,dReal) da_dMakeRandomVector;
    alias nothrow void function(dReal*,int,int,dReal) da_dMakeRandomMatrix;
    alias nothrow void function(dReal*,int) da_dClearUpperTriangle;
    alias nothrow dReal function(in dReal*,in dReal*,int,int) da_dMaxDifference;
    alias nothrow dReal function(in dReal*,in dReal*,int) da_dMaxDifferenceLowerTriangle;
    alias nothrow dWorldID function() da_dWorldCreate;
    alias nothrow void function(dWorldID) da_dWorldDestroy;
    alias nothrow void function(dWorldID,dReal,dReal,dReal) da_dWorldSetGravity;
    alias nothrow void function(dWorldID,dVector3) da_dWorldGetGravity;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetERP;
    alias nothrow dReal function(dWorldID) da_dWorldGetERP;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetCFM;
    alias nothrow dReal function(dWorldID) da_dWorldGetCFM;
    alias nothrow int function(dWorldID, dWorldID) da_dWorldUseSharedWorkingMemory;
    alias nothrow void function(dWorldID) da_dWorldCleanupWorkingMemory;
    alias nothrow int function(dWorldID, in dWorldStepReserveInfo*) da_dWorldSetStepMemoryReservationPolicy;
    alias nothrow int function(dWorldID, in dWorldStepMemoryFunctionsInfo*) da_dWorldSetStepMemoryManager;
    alias nothrow int function(dWorldID,dReal) da_dWorldStep;
    alias nothrow void function(dWorldID,dReal,dReal,dReal,dReal,dVector3) da_dWorldImpulseToForce;
    alias nothrow int function(dWorldID,dReal) da_dWorldQuickStep;
    alias nothrow void function(dWorldID,int) da_dWorldSetQuickStepNumIterations;
    alias nothrow int function(dWorldID) da_dWorldGetQuickStepNumIterations;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetQuickStepW;
    alias nothrow dReal function(dWorldID) da_dWorldGetQuickStepW;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetContactMaxCorrectingVel;
    alias nothrow dReal function(dWorldID) da_dWorldGetContactMaxCorrectingVel;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetContactSurfaceLayer;
    alias nothrow dReal function(dWorldID) da_dWorldGetContactSurfaceLayer;
    alias nothrow dReal function(dWorldID) da_dWorldGetAutoDisableLinearThreshold;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetAutoDisableLinearThreshold;
    alias nothrow dReal function(dWorldID) da_dWorldGetAutoDisableAngularThreshold;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetAutoDisableAngularThreshold;
    alias nothrow int function(dWorldID) da_dWorldGetAutoDisableAverageSamplesCount;
    alias nothrow void function(dWorldID,uint) da_dWorldSetAutoDisableAverageSamplesCount;
    alias nothrow int function(dWorldID) da_dWorldGetAutoDisableSteps;
    alias nothrow void function(dWorldID,int) da_dWorldSetAutoDisableSteps;
    alias nothrow dReal function(dWorldID) da_dWorldGetAutoDisableTime;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetAutoDisableTime;
    alias nothrow int function(dWorldID) da_dWorldGetAutoDisableFlag;
    alias nothrow void function(dWorldID,int) da_dWorldSetAutoDisableFlag;
    alias nothrow dReal function(dWorldID) da_dWorldGetLinearDampingThreshold;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetLinearDampingThreshold;
    alias nothrow dReal function(dWorldID) da_dWorldGetAngularDampingThreshold;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetAngularDampingThreshold;
    alias nothrow dReal function(dWorldID) da_dWorldGetLinearDamping;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetLinearDamping;
    alias nothrow dReal function(dWorldID) da_dWorldGetAngularDamping;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetAngularDamping;
    alias nothrow void function(dWorldID,dReal,dReal) da_dWorldSetDamping;
    alias nothrow dReal function(dWorldID) da_dWorldGetMaxAngularSpeed;
    alias nothrow void function(dWorldID,dReal) da_dWorldSetMaxAngularSpeed;
    alias nothrow dReal function(dBodyID) da_dBodyGetAutoDisableLinearThreshold;
    alias nothrow void function(dBodyID,dReal) da_dBodySetAutoDisableLinearThreshold;
    alias nothrow dReal function(dBodyID) da_dBodyGetAutoDisableAngularThreshold;
    alias nothrow void function(dBodyID,dReal) da_dBodySetAutoDisableAngularThreshold;
    alias nothrow int function(dBodyID) da_dBodyGetAutoDisableAverageSamplesCount;
    alias nothrow void function(dBodyID,uint) da_dBodySetAutoDisableAverageSamplesCount;
    alias nothrow int function(dBodyID) da_dBodyGetAutoDisableSteps;
    alias nothrow void function(dBodyID,int) da_dBodySetAutoDisableSteps;
    alias nothrow dReal function(dBodyID) da_dBodyGetAutoDisableTime;
    alias nothrow void function(dBodyID,dReal) da_dBodySetAutoDisableTime;
    alias nothrow int function(dBodyID) da_dBodyGetAutoDisableFlag;
    alias nothrow void function(dBodyID,int) da_dBodySetAutoDisableFlag;
    alias nothrow void function(dBodyID) da_dBodySetAutoDisableDefaults;
    alias nothrow dWorldID function(dBodyID) da_dBodyGetWorld;
    alias nothrow dBodyID function(dWorldID) da_dBodyCreate;
    alias nothrow void function(dBodyID) da_dBodyDestroy;
    alias nothrow void function(dBodyID,void*) da_dBodySetData;
    alias nothrow void* function(dBodyID) da_dBodyGetData;
    alias nothrow void function(dBodyID,dReal,dReal,dReal) da_dBodySetPosition;
    alias nothrow void function(dBodyID,in dMatrix3) da_dBodySetRotation;
    alias nothrow void function(dBodyID,in dQuaternion) da_dBodySetQuaternion;
    alias nothrow void function(dBodyID,dReal,dReal,dReal) da_dBodySetLinearVel;
    alias nothrow void function(dBodyID,dReal,dReal,dReal) da_dBodySetAngularVel;
    alias nothrow dReal* function(dBodyID) da_dBodyGetPosition;
    alias nothrow void function(dBodyID,dVector3) da_dBodyCopyPosition;
    alias nothrow dReal* function(dBodyID) da_dBodyGetRotation;
    alias nothrow void function(dBodyID,dMatrix3) da_dBodyCopyRotation;
    alias nothrow dReal* function(dBodyID) da_dBodyGetQuaternion;
    alias nothrow void function(dBodyID,dQuaternion) da_dBodyCopyQuaternion;
    alias nothrow dReal* function(dBodyID) da_dBodyGetLinearVel;
    alias nothrow dReal* function(dBodyID) da_dBodyGetAngularVel;
    alias nothrow void function(dBodyID,in dMass*) da_dBodySetMass;
    alias nothrow void function(dBodyID,dMass*) da_dBodyGetMass;
    alias nothrow void function(dBodyID,dReal,dReal,dReal) da_dBodyAddForce;
    alias nothrow void function(dBodyID,dReal,dReal,dReal) da_dBodyAddTorque;
    alias nothrow void function(dBodyID,dReal,dReal,dReal) da_dBodyAddRelForce;
    alias nothrow void function(dBodyID,dReal,dReal,dReal) da_dBodyAddRelTorque;
    alias nothrow void function(dBodyID,dReal,dReal,dReal,dReal,dReal,dReal) da_dBodyAddForceAtPos;
    alias nothrow void function(dBodyID,dReal,dReal,dReal,dReal,dReal,dReal) da_dBodyAddForceAtRelPos;
    alias nothrow void function(dBodyID,dReal,dReal,dReal,dReal,dReal,dReal) da_dBodyAddRelForceAtPos;
    alias nothrow void function(dBodyID,dReal,dReal,dReal,dReal,dReal,dReal) da_dBodyAddRelForceAtRelPos;
    alias nothrow dReal* function(dBodyID) da_dBodyGetForce;
    alias nothrow dReal* function(dBodyID) da_dBodyGetTorque;
    alias nothrow void function(dBodyID,dReal,dReal,dReal) da_dBodySetForce;
    alias nothrow void function(dBodyID,dReal,dReal,dReal) da_dBodySetTorque;
    alias nothrow void function(dBodyID,dReal,dReal,dReal,dVector3) da_dBodyGetRelPointPos;
    alias nothrow void function(dBodyID,dReal,dReal,dReal,dVector3) da_dBodyGetRelPointVel;
    alias nothrow void function(dBodyID,dReal,dReal,dReal,dVector3) da_dBodyGetPointVel;
    alias nothrow void function(dBodyID,dReal,dReal,dReal,dVector3) da_dBodyGetPosRelPoint;
    alias nothrow void function(dBodyID,dReal,dReal,dReal,dVector3) da_dBodyVectorToWorld;
    alias nothrow void function(dBodyID,dReal,dReal,dReal,dVector3) da_dBodyVectorFromWorld;
    alias nothrow void function(dBodyID,int) da_dBodySetFiniteRotationMode;
    alias nothrow void function(dBodyID,dReal,dReal,dReal) da_dBodySetFiniteRotationAxis;
    alias nothrow int function(dBodyID) da_dBodyGetFiniteRotationMode;
    alias nothrow void function(dBodyID,dVector3) da_dBodyGetFiniteRotationAxis;
    alias nothrow int function(dBodyID) da_dBodyGetNumJoints;
    alias nothrow dJointID function(dBodyID,int) da_dBodyGetJoint;
    alias nothrow void function(dBodyID) da_dBodySetDynamic;
    alias nothrow void function(dBodyID) da_dBodySetKinematic;
    alias nothrow int function(dBodyID) da_dBodyIsKinematic;
    alias nothrow void function(dBodyID) da_dBodyEnable;
    alias nothrow void function(dBodyID) da_dBodyDisable;
    alias nothrow int function(dBodyID) da_dBodyIsEnabled;
    alias nothrow void function(dBodyID,int) da_dBodySetGravityMode;
    alias nothrow int function(dBodyID) da_dBodyGetGravityMode;
    alias nothrow void function(dBodyID,void function(dBodyID)) da_dBodySetMovedCallback;
    alias nothrow dGeomID function(dBodyID) da_dBodyGetFirstGeom;
    alias nothrow dGeomID function(dGeomID) da_dBodyGetNextGeom;
    alias nothrow void function(dBodyID) da_dBodySetDampingDefaults;
    alias nothrow dReal function(dBodyID) da_dBodyGetLinearDamping;
    alias nothrow void function(dBodyID,dReal) da_dBodySetLinearDamping;
    alias nothrow dReal function(dBodyID) da_dBodyGetAngularDamping;
    alias nothrow void function(dBodyID,dReal) da_dBodySetAngularDamping;
    alias nothrow void function(dBodyID,dReal,dReal) da_dBodySetDamping;
    alias nothrow dReal function(dBodyID) da_dBodyGetLinearDampingThreshold;
    alias nothrow void function(dBodyID,dReal) da_dBodySetLinearDampingThreshold;
    alias nothrow dReal function(dBodyID) da_dBodyGetAngularDampingThreshold;
    alias nothrow void function(dBodyID,dReal) da_dBodySetAngularDampingThreshold;
    alias nothrow dReal function(dBodyID) da_dBodyGetMaxAngularSpeed;
    alias nothrow void function(dBodyID,dReal) da_dBodySetMaxAngularSpeed;
    alias nothrow int function(dBodyID) da_dBodyGetGyroscopicMode;
    alias nothrow void function(dBodyID,int) da_dBodySetGyroscopicMode;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreateBall;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreateHinge;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreateSlider;
    alias nothrow dJointID function(dWorldID,dJointGroupID,in dContact*) da_dJointCreateContact;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreateHinge2;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreateUniversal;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreatePR;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreatePU;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreatePiston;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreateFixed;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreateNull;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreateAMotor;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreateLMotor;
    alias nothrow dJointID function(dWorldID,dJointGroupID) da_dJointCreatePlane2D;
    alias nothrow void function(dJointID) da_dJointDestroy;
    alias nothrow dJointGroupID function(int) da_dJointGroupCreate;
    alias nothrow void function(dJointGroupID) da_dJointGroupDestroy;
    alias nothrow void function(dJointGroupID) da_dJointGroupEmpty;
    alias nothrow int function(dJointID) da_dJointGetNumBodies;
    alias nothrow void function(dJointID,dBodyID,dBodyID) da_dJointAttach;
    alias nothrow void function(dJointID) da_dJointEnable;
    alias nothrow void function(dJointID) da_dJointDisable;
    alias nothrow int function(dJointID) da_dJointIsEnabled;
    alias nothrow void function(dJointID,void*) da_dJointSetData;
    alias nothrow void* function(dJointID) da_dJointGetData;
    alias nothrow dJointType function(dJointID) da_dJointGetType;
    alias nothrow dBodyID function(dJointID,int) da_dJointGetBody;
    alias nothrow void function(dJointID,dJointFeedback*) da_dJointSetFeedback;
    alias nothrow dJointFeedback* function(dJointID) da_dJointGetFeedback;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetBallAnchor;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetBallAnchor2;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetBallParam;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetHingeAnchor;
    alias nothrow void function(dJointID,dReal,dReal,dReal,dReal,dReal,dReal) da_dJointSetHingeAnchorDelta;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetHingeAxis;
    alias nothrow void function(dJointID,dReal,dReal,dReal,dReal) da_dJointSetHingeAxisOffset;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetHingeParam;
    alias nothrow void function(dJointID,dReal) da_dJointAddHingeTorque;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetSliderAxis;
    alias nothrow void function(dJointID,dReal,dReal,dReal,dReal,dReal,dReal) da_dJointSetSliderAxisDelta;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetSliderParam;
    alias nothrow void function(dJointID,dReal) da_dJointAddSliderForce;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetHinge2Anchor;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetHinge2Axis1;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetHinge2Axis2;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetHinge2Param;
    alias nothrow void function(dJointID,dReal,dReal) da_dJointAddHinge2Torques;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetUniversalAnchor;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetUniversalAxis1;
    alias nothrow void function(dJointID,dReal,dReal,dReal,dReal,dReal) da_dJointSetUniversalAxis1Offset;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetUniversalAxis2;
    alias nothrow void function(dJointID,dReal,dReal,dReal,dReal,dReal) da_dJointSetUniversalAxis2Offset;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetUniversalParam;
    alias nothrow void function(dJointID,dReal,dReal) da_dJointAddUniversalTorques;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetPRAnchor;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetPRAxis1;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetPRAxis2;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetPRParam;
    alias nothrow void function(dJointID,dReal) da_dJointAddPRTorque;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetPUAnchor;
    alias nothrow void function(dJointID,dReal,dReal,dReal,dReal,dReal,dReal) da_dJointSetPUAnchorOffset;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetPUAxis1;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetPUAxis2;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetPUAxis3;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetPUAxisP;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetPUParam;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetPistonAnchor;
    alias nothrow void function(dJointID,dReal,dReal,dReal,dReal,dReal,dReal) da_dJointSetPistonAnchorOffset;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointSetPistonAxis;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetPistonParam;
    alias nothrow void function(dJointID,dReal) da_dJointAddPistonForce;
    alias nothrow void function(dJointID) da_dJointSetFixed;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetFixedParam;
    alias nothrow void function(dJointID,int) da_dJointSetAMotorNumAxes;
    alias nothrow void function(dJointID,int,int,dReal,dReal,dReal) da_dJointSetAMotorAxis;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetAMotorAngle;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetAMotorParam;
    alias nothrow void function(dJointID,int) da_dJointSetAMotorMode;
    alias nothrow void function(dJointID,dReal,dReal,dReal) da_dJointAddAMotorTorques;
    alias nothrow void function(dJointID,int) da_dJointSetLMotorNumAxes;
    alias nothrow void function(dJointID,int,int,dReal,dReal,dReal) da_dJointSetLMotorAxis;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetLMotorParam;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetPlane2DXParam;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetPlane2DYParam;
    alias nothrow void function(dJointID,int,dReal) da_dJointSetPlane2DAngleParam;
    alias nothrow void function(dJointID,dVector3) da_dJointGetBallAnchor;
    alias nothrow void function(dJointID,dVector3) da_dJointGetBallAnchor2;
    alias nothrow dReal function(dJointID,int) da_dJointGetBallParam;
    alias nothrow void function(dJointID,dVector3) da_dJointGetHingeAnchor;
    alias nothrow void function(dJointID,dVector3) da_dJointGetHingeAnchor2;
    alias nothrow void function(dJointID,dVector3) da_dJointGetHingeAxis;
    alias nothrow dReal function(dJointID,int) da_dJointGetHingeParam;
    alias nothrow dReal function(dJointID) da_dJointGetHingeAngle;
    alias nothrow dReal function(dJointID) da_dJointGetHingeAngleRate;
    alias nothrow dReal function(dJointID) da_dJointGetSliderPosition;
    alias nothrow dReal function(dJointID) da_dJointGetSliderPositionRate;
    alias nothrow void function(dJointID,dVector3) da_dJointGetSliderAxis;
    alias nothrow dReal function(dJointID,int) da_dJointGetSliderParam;
    alias nothrow void function(dJointID,dVector3) da_dJointGetHinge2Anchor;
    alias nothrow void function(dJointID,dVector3) da_dJointGetHinge2Anchor2;
    alias nothrow void function(dJointID,dVector3) da_dJointGetHinge2Axis1;
    alias nothrow void function(dJointID,dVector3) da_dJointGetHinge2Axis2;
    alias nothrow dReal function(dJointID,int) da_dJointGetHinge2Param;
    alias nothrow dReal function(dJointID) da_dJointGetHinge2Angle1;
    alias nothrow dReal function(dJointID) da_dJointGetHinge2Angle1Rate;
    alias nothrow dReal function(dJointID) da_dJointGetHinge2Angle2Rate;
    alias nothrow void function(dJointID,dVector3) da_dJointGetUniversalAnchor;
    alias nothrow void function(dJointID,dVector3) da_dJointGetUniversalAnchor2;
    alias nothrow void function(dJointID,dVector3) da_dJointGetUniversalAxis1;
    alias nothrow void function(dJointID,dVector3) da_dJointGetUniversalAxis2;
    alias nothrow dReal function(dJointID,int) da_dJointGetUniversalParam;
    alias nothrow void function(dJointID,dReal*,dReal*) da_dJointGetUniversalAngles;
    alias nothrow dReal function(dJointID) da_dJointGetUniversalAngle1;
    alias nothrow dReal function(dJointID) da_dJointGetUniversalAngle2;
    alias nothrow dReal function(dJointID) da_dJointGetUniversalAngle1Rate;
    alias nothrow dReal function(dJointID) da_dJointGetUniversalAngle2Rate;
    alias nothrow void function(dJointID,dVector3) da_dJointGetPRAnchor;
    alias nothrow dReal function(dJointID) da_dJointGetPRPosition;
    alias nothrow dReal function(dJointID) da_dJointGetPRPositionRate;
    alias nothrow dReal function(dJointID) da_dJointGetPRAngle;
    alias nothrow dReal function(dJointID) da_dJointGetPRAngleRate;
    alias nothrow void function(dJointID,dVector3) da_dJointGetPRAxis1;
    alias nothrow void function(dJointID,dVector3) da_dJointGetPRAxis2;
    alias nothrow dReal function(dJointID,int) da_dJointGetPRParam;
    alias nothrow void function(dJointID,dVector3) da_dJointGetPUAnchor;
    alias nothrow dReal function(dJointID) da_dJointGetPUPosition;
    alias nothrow dReal function(dJointID) da_dJointGetPUPositionRate;
    alias nothrow void function(dJointID,dVector3) da_dJointGetPUAxis1;
    alias nothrow void function(dJointID,dVector3) da_dJointGetPUAxis2;
    alias nothrow void function(dJointID,dVector3) da_dJointGetPUAxis3;
    alias nothrow void function(dJointID,dVector3) da_dJointGetPUAxisP;
    alias nothrow void function(dJointID,dReal*,dReal*) da_dJointGetPUAngles;
    alias nothrow dReal function(dJointID) da_dJointGetPUAngle1;
    alias nothrow dReal function(dJointID) da_dJointGetPUAngle1Rate;
    alias nothrow dReal function(dJointID) da_dJointGetPUAngle2;
    alias nothrow dReal function(dJointID) da_dJointGetPUAngle2Rate;
    alias nothrow dReal function(dJointID,int) da_dJointGetPUParam;
    alias nothrow dReal function(dJointID) da_dJointGetPistonPosition;
    alias nothrow dReal function(dJointID) da_dJointGetPistonPositionRate;
    alias nothrow dReal function(dJointID) da_dJointGetPistonAngle;
    alias nothrow dReal function(dJointID) da_dJointGetPistonAngleRate;
    alias nothrow void function(dJointID,dVector3) da_dJointGetPistonAnchor;
    alias nothrow void function(dJointID,dVector3) da_dJointGetPistonAnchor2;
    alias nothrow void function(dJointID,dVector3) da_dJointGetPistonAxis;
    alias nothrow dReal function(dJointID,int) da_dJointGetPistonParam;
    alias nothrow int function(dJointID) da_dJointGetAMotorNumAxes;
    alias nothrow void function(dJointID,int,dVector3) da_dJointGetAMotorAxis;
    alias nothrow int function(dJointID,int) da_dJointGetAMotorAxisRel;
    alias nothrow dReal function(dJointID,int) da_dJointGetAMotorAngle;
    alias nothrow dReal function(dJointID,int) da_dJointGetAMotorAngleRate;
    alias nothrow dReal function(dJointID,int) da_dJointGetAMotorParam;
    alias nothrow int function(dJointID) da_dJointGetAMotorMode;
    alias nothrow int function(dJointID) da_dJointGetLMotorNumAxes;
    alias nothrow void function(dJointID,int,dVector3) da_dJointGetLMotorAxis;
    alias nothrow dReal function(dJointID,int) da_dJointGetLMotorParam;
    alias nothrow dReal function(dJointID,int) da_dJointGetFixedParam;
    alias nothrow dJointID function(dBodyID,dBodyID) da_dConnectingJoint;
    alias nothrow int function(dBodyID,dBodyID,dJointID*) da_dConnectingJointList;
    alias nothrow int function(dBodyID,dBodyID) da_dAreConnected;
    alias nothrow int function(dBodyID,dBodyID,int) da_dAreConnectedExcluding;
    alias nothrow void function() da_dInitODE;
    alias nothrow int function(uint) da_dInitODE2;
    alias nothrow int function(uint) da_dAllocateODEDataForThread;
    alias nothrow void function() da_dCleanupODEAllDataForThread;
    alias nothrow void function() da_dCloseODE;
    alias nothrow int function(dVector3) da_dSafeNormalize3;
    alias nothrow int function(dVector4) da_dSafeNormalize4;
    alias nothrow void function(dVector3) da_dNormalize3;
    alias nothrow void function(dVector4) da_dNormalize4;
    alias nothrow void function(in dVector3, dVector3, dVector3) da_dPlaneSpace;
    alias nothrow void function(dMatrix3) da_dOrthogonalizeR;
    alias nothrow void function(dMatrix3) da_dRSetIdentity;
    alias nothrow void function(dMatrix3,dReal,dReal,dReal,dReal) da_dRFromAxisAndAngle;
    alias nothrow void function(dMatrix3,dReal,dReal,dReal) da_dRFromEulerAngles;
    alias nothrow void function(dMatrix3,dReal,dReal,dReal,dReal,dReal,dReal) da_dRFrom2Axes;
    alias nothrow void function(dMatrix3,dReal,dReal,dReal) da_dRFromZAxis;
    alias nothrow void function(dQuaternion) da_dQSetIdentity;
    alias nothrow void function(dQuaternion,dReal,dReal,dReal,dReal) da_dQFromAxisAndAngle;
    alias nothrow void function(dQuaternion,in dQuaternion,in dQuaternion) da_dQMultiply0;
    alias nothrow void function(dQuaternion,in dQuaternion,in dQuaternion) da_dQMultiply1;
    alias nothrow void function(dQuaternion,in dQuaternion,in dQuaternion) da_dQMultiply2;
    alias nothrow void function(dQuaternion,in dQuaternion,in dQuaternion) da_dQMultiply3;
    alias nothrow void function(dMatrix3,in dQuaternion) da_dRfromQ;
    alias nothrow void function(dQuaternion,in dMatrix3) da_dQfromR;
    alias nothrow void function(ref dReal[4],in dVector3,in dQuaternion) da_dDQfromW;
    alias nothrow void function(dStopwatch*) da_dStopwatchReset;
    alias nothrow void function(dStopwatch*) da_dStopwatchStart;
    alias nothrow void function(dStopwatch*) da_dStopwatchStop;
    alias nothrow double function(dStopwatch*) da_dStopwatchTime;
    alias nothrow void function(const(char)*) da_dTimerStart;
    alias nothrow void function(const(char)*) da_dTimerNow;
    alias nothrow void function() da_dTimerEnd;
    alias nothrow void function(FILE*,int) da_dTimerReport;
    alias nothrow double function() da_dTimerTicksPerSecond;
    alias nothrow double function() da_dTimerResolution;

}

__gshared
{
    da_dGetConfiguration dGetConfiguration;
    da_dCheckConfiguration dCheckConfiguration;
    da_dGeomDestroy dGeomDestroy;
    da_dGeomSetData dGeomSetData;
    da_dGeomGetData dGeomGetData;
    da_dGeomSetBody dGeomSetBody;
    da_dGeomGetBody dGeomGetBody;
    da_dGeomSetPosition dGeomSetPosition;
    da_dGeomSetRotation dGeomSetRotation;
    da_dGeomSetQuaternion dGeomSetQuaternion;
    da_dGeomGetPosition dGeomGetPosition;
    da_dGeomCopyPosition dGeomCopyPosition;
    da_dGeomGetRotation dGeomGetRotation;
    da_dGeomCopyRotation dGeomCopyRotation;
    da_dGeomGetQuaternion dGeomGetQuaternion;
    da_dGeomGetAABB dGeomGetAABB;
    da_dGeomIsSpace dGeomIsSpace;
    da_dGeomGetSpace dGeomGetSpace;
    da_dGeomGetClass dGeomGetClass;
    da_dGeomSetCategoryBits dGeomSetCategoryBits;
    da_dGeomSetCollideBits dGeomSetCollideBits;
    da_dGeomGetCategoryBits dGeomGetCategoryBits;
    da_dGeomGetCollideBits dGeomGetCollideBits;
    da_dGeomEnable dGeomEnable;
    da_dGeomDisable dGeomDisable;
    da_dGeomIsEnabled dGeomIsEnabled;
    da_dGeomLowLevelControl dGeomLowLevelControl;
    da_dGeomGetRelPointPos dGeomGetRelPointPos;
    da_dGeomGetPosRelPoint dGeomGetPosRelPoint;
    da_dGeomVectorToWorld dGeomVectorToWorld;
    da_dGeomVectorFromWorld dGeomVectorFromWorld;
    da_dGeomSetOffsetPosition dGeomSetOffsetPosition;
    da_dGeomSetOffsetRotation dGeomSetOffsetRotation;
    da_dGeomSetOffsetQuaternion dGeomSetOffsetQuaternion;
    da_dGeomSetOffsetWorldPosition dGeomSetOffsetWorldPosition;
    da_dGeomSetOffsetWorldRotation dGeomSetOffsetWorldRotation;
    da_dGeomSetOffsetWorldQuaternion dGeomSetOffsetWorldQuaternion;
    da_dGeomClearOffset dGeomClearOffset;
    da_dGeomIsOffset dGeomIsOffset;
    da_dGeomGetOffsetPosition dGeomGetOffsetPosition;
    da_dGeomCopyOffsetPosition dGeomCopyOffsetPosition;
    da_dGeomGetOffsetRotation dGeomGetOffsetRotation;
    da_dGeomGetOffsetQuaternion dGeomGetOffsetQuaternion;
    da_dCollide dCollide;
    da_dSpaceCollide dSpaceCollide;
    da_dSpaceCollide2 dSpaceCollide2;
    da_dCreateSphere dCreateSphere;
    da_dGeomSphereSetRadius dGeomSphereSetRadius;
    da_dGeomSphereGetRadius dGeomSphereGetRadius;
    da_dGeomSpherePointDepth dGeomSpherePointDepth;
    da_dCreateConvex dCreateConvex;
    da_dGeomSetConvex dGeomSetConvex;
    da_dCreateBox dCreateBox;
    da_dGeomBoxSetLengths dGeomBoxSetLengths;
    da_dGeomBoxGetLengths dGeomBoxGetLengths;
    da_dGeomBoxPointDepth dGeomBoxPointDepth;
    da_dCreatePlane dCreatePlane;
    da_dGeomPlaneSetParams dGeomPlaneSetParams;
    da_dGeomPlaneGetParams dGeomPlaneGetParams;
    da_dGeomPlanePointDepth dGeomPlanePointDepth;
    da_dCreateCapsule dCreateCapsule;
    da_dGeomCapsuleSetParams dGeomCapsuleSetParams;
    da_dGeomCapsuleGetParams dGeomCapsuleGetParams;
    da_dGeomCapsulePointDepth dGeomCapsulePointDepth;
    da_dCreateCylinder dCreateCylinder;
    da_dGeomCylinderSetParams dGeomCylinderSetParams;
    da_dGeomCylinderGetParams dGeomCylinderGetParams;
    da_dCreateRay dCreateRay;
    da_dGeomRaySetLength dGeomRaySetLength;
    da_dGeomRayGetLength dGeomRayGetLength;
    da_dGeomRaySet dGeomRaySet;
    da_dGeomRayGet dGeomRayGet;
    da_dGeomRaySetParams dGeomRaySetParams;
    da_dGeomRayGetParams dGeomRayGetParams;
    da_dGeomRaySetClosestHit dGeomRaySetClosestHit;
    da_dGeomRayGetClosestHit dGeomRayGetClosestHit;
    da_dCreateGeomTransform dCreateGeomTransform;
    da_dGeomTransformSetGeom dGeomTransformSetGeom;
    da_dGeomTransformGetGeom dGeomTransformGetGeom;
    da_dGeomTransformSetCleanup dGeomTransformSetCleanup;
    da_dGeomTransformGetCleanup dGeomTransformGetCleanup;
    da_dGeomTransformSetInfo dGeomTransformSetInfo;
    da_dGeomTransformGetInfo dGeomTransformGetInfo;
    da_dCreateHeightfield dCreateHeightfield;
    da_dGeomHeightfieldDataCreate dGeomHeightfieldDataCreate;
    da_dGeomHeightfieldDataDestroy dGeomHeightfieldDataDestroy;
    da_dGeomHeightfieldDataBuildCallback dGeomHeightfieldDataBuildCallback;
    da_dGeomHeightfieldDataBuildByte dGeomHeightfieldDataBuildByte;
    da_dGeomHeightfieldDataBuildShort dGeomHeightfieldDataBuildShort;
    da_dGeomHeightfieldDataBuildSingle dGeomHeightfieldDataBuildSingle;
    da_dGeomHeightfieldDataBuildDouble dGeomHeightfieldDataBuildDouble;
    da_dGeomHeightfieldDataSetBounds dGeomHeightfieldDataSetBounds;
    da_dGeomHeightfieldSetHeightfieldData dGeomHeightfieldSetHeightfieldData;
    da_dGeomHeightfieldGetHeightfieldData dGeomHeightfieldGetHeightfieldData;
    da_dClosestLineSegmentPoints dClosestLineSegmentPoints;
    da_dBoxTouchesBox dBoxTouchesBox;
    da_dBoxBox dBoxBox;
    da_dInfiniteAABB dInfiniteAABB;
    da_dCreateGeomClass dCreateGeomClass;
    da_dGeomGetClassData dGeomGetClassData;
    da_dCreateGeom dCreateGeom;
    da_dSetColliderOverride dSetColliderOverride;
    da_dSimpleSpaceCreate dSimpleSpaceCreate;
    da_dHashSpaceCreate dHashSpaceCreate;
    da_dQuadTreeSpaceCreate dQuadTreeSpaceCreate;
    da_dSweepAndPruneSpaceCreate dSweepAndPruneSpaceCreate;
    da_dSpaceDestroy dSpaceDestroy;
    da_dHashSpaceSetLevels dHashSpaceSetLevels;
    da_dHashSpaceGetLevels dHashSpaceGetLevels;
    da_dSpaceSetCleanup dSpaceSetCleanup;
    da_dSpaceGetCleanup dSpaceGetCleanup;
    da_dSpaceSetSublevel dSpaceSetSublevel;
    da_dSpaceGetSublevel dSpaceGetSublevel;
    da_dSpaceSetManualCleanup dSpaceSetManualCleanup;
    da_dSpaceGetManualCleanup dSpaceGetManualCleanup;
    da_dSpaceAdd dSpaceAdd;
    da_dSpaceRemove dSpaceRemove;
    da_dSpaceQuery dSpaceQuery;
    da_dSpaceClean dSpaceClean;
    da_dSpaceGetNumGeoms dSpaceGetNumGeoms;
    da_dSpaceGetGeom dSpaceGetGeom;
    da_dSpaceGetClass dSpaceGetClass;
    da_dGeomTriMeshDataCreate dGeomTriMeshDataCreate;
    da_dGeomTriMeshDataDestroy dGeomTriMeshDataDestroy;
    da_dGeomTriMeshDataSet dGeomTriMeshDataSet;
    da_dGeomTriMeshDataGet dGeomTriMeshDataGet;
    da_dGeomTriMeshSetLastTransform dGeomTriMeshSetLastTransform;
    da_dGeomTriMeshGetLastTransform dGeomTriMeshGetLastTransform;
    da_dGeomTriMeshDataBuildSingle dGeomTriMeshDataBuildSingle;
    da_dGeomTriMeshDataBuildSingle1 dGeomTriMeshDataBuildSingle1;
    da_dGeomTriMeshDataBuildDouble dGeomTriMeshDataBuildDouble;
    da_dGeomTriMeshDataBuildDouble1 dGeomTriMeshDataBuildDouble1;
    da_dGeomTriMeshDataBuildSimple dGeomTriMeshDataBuildSimple;
    da_dGeomTriMeshDataBuildSimple1 dGeomTriMeshDataBuildSimple1;
    da_dGeomTriMeshDataPreprocess dGeomTriMeshDataPreprocess;
    da_dGeomTriMeshDataGetBuffer dGeomTriMeshDataGetBuffer;
    da_dGeomTriMeshDataSetBuffer dGeomTriMeshDataSetBuffer;
    da_dGeomTriMeshSetCallback dGeomTriMeshSetCallback;
    da_dGeomTriMeshGetCallback dGeomTriMeshGetCallback;
    da_dGeomTriMeshSetArrayCallback dGeomTriMeshSetArrayCallback;
    da_dGeomTriMeshGetArrayCallback dGeomTriMeshGetArrayCallback;
    da_dGeomTriMeshSetRayCallback dGeomTriMeshSetRayCallback;
    da_dGeomTriMeshGetRayCallback dGeomTriMeshGetRayCallback;
    da_dGeomTriMeshSetTriMergeCallback dGeomTriMeshSetTriMergeCallback;
    da_dGeomTriMeshGetTriMergeCallback dGeomTriMeshGetTriMergeCallback;
    da_dCreateTriMesh dCreateTriMesh;
    da_dGeomTriMeshSetData dGeomTriMeshSetData;
    da_dGeomTriMeshGetData dGeomTriMeshGetData;
    da_dGeomTriMeshEnableTC dGeomTriMeshEnableTC;
    da_dGeomTriMeshIsTCEnabled dGeomTriMeshIsTCEnabled;
    da_dGeomTriMeshClearTCCache dGeomTriMeshClearTCCache;
    da_dGeomTriMeshGetTriMeshDataID dGeomTriMeshGetTriMeshDataID;
    da_dGeomTriMeshGetTriangle dGeomTriMeshGetTriangle;
    da_dGeomTriMeshGetPoint dGeomTriMeshGetPoint;
    da_dGeomTriMeshGetTriangleCount dGeomTriMeshGetTriangleCount;
    da_dGeomTriMeshDataUpdate dGeomTriMeshDataUpdate;
    da_dSetErrorHandler dSetErrorHandler;
    da_dSetDebugHandler dSetDebugHandler;
    da_dSetMessageHandler dSetMessageHandler;
    da_dGetErrorHandler dGetErrorHandler;
    da_dGetDebugHandler dGetDebugHandler;
    da_dGetMessageHandler dGetMessageHandler;
    da_dError dError;
    da_dDebug dDebug;
    da_dMessage dMessage;
    da_dWorldExportDIF dWorldExportDIF;
    da_dMassCheck dMassCheck;
    da_dMassSetZero dMassSetZero;
    da_dMassSetParameters dMassSetParameters;
    da_dMassSetSphere dMassSetSphere;
    da_dMassSetSphereTotal dMassSetSphereTotal;
    da_dMassSetCapsule dMassSetCapsule;
    da_dMassSetCapsuleTotal dMassSetCapsuleTotal;
    da_dMassSetCylinder dMassSetCylinder;
    da_dMassSetCylinderTotal dMassSetCylinderTotal;
    da_dMassSetBox dMassSetBox;
    da_dMassSetBoxTotal dMassSetBoxTotal;
    da_dMassSetTrimesh dMassSetTrimesh;
    da_dMassSetTrimeshTotal dMassSetTrimeshTotal;
    da_dMassAdjust dMassAdjust;
    da_dMassTranslate dMassTranslate;
    da_dMassRotate dMassRotate;
    da_dMassAdd dMassAdd;
    da_dSetZero dSetZero;
    da_dSetValue dSetValue;
    da_dDot dDot;
    da_dMultiply0 dMultiply0;
    da_dMultiply1 dMultiply1;
    da_dMultiply2 dMultiply2;
    da_dFactorCholesky dFactorCholesky;
    da_dSolveCholesky dSolveCholesky;
    da_dInvertPDMatrix dInvertPDMatrix;
    da_dIsPositiveDefinite dIsPositiveDefinite;
    da_dFactorLDLT dFactorLDLT;
    da_dSolveL1 dSolveL1;
    da_dSolveL1T dSolveL1T;
    da_dVectorScale dVectorScale;
    da_dSolveLDLT dSolveLDLT;
    da_dLDLTAddTL dLDLTAddTL;
    da_dLDLTRemove dLDLTRemove;
    da_dRemoveRowCol dRemoveRowCol;
    da_dSetAllocHandler dSetAllocHandler;
    da_dSetReallocHandler dSetReallocHandler;
    da_dSetFreeHandler dSetFreeHandler;
    da_dGetAllocHandler dGetAllocHandler;
    da_dGetReallocHandler dGetReallocHandler;
    da_dGetFreeHandler dGetFreeHandler;
    da_dAlloc dAlloc;
    da_dRealloc dRealloc;
    da_dFree dFree;
    da_dTestRand dTestRand;
    da_dRand dRand;
    da_dRandGetSeed dRandGetSeed;
    da_dRandSetSeed dRandSetSeed;
    da_dRandInt dRandInt;
    da_dRandReal dRandReal;
    da_dPrintMatrix dPrintMatrix;
    da_dMakeRandomVector dMakeRandomVector;
    da_dMakeRandomMatrix dMakeRandomMatrix;
    da_dClearUpperTriangle dClearUpperTriangle;
    da_dMaxDifference dMaxDifference;
    da_dMaxDifferenceLowerTriangle dMaxDifferenceLowerTriangle;
    da_dWorldCreate dWorldCreate;
    da_dWorldDestroy dWorldDestroy;
    da_dWorldSetGravity dWorldSetGravity;
    da_dWorldGetGravity dWorldGetGravity;
    da_dWorldSetERP dWorldSetERP;
    da_dWorldGetERP dWorldGetERP;
    da_dWorldSetCFM dWorldSetCFM;
    da_dWorldGetCFM dWorldGetCFM;
    da_dWorldUseSharedWorkingMemory dWorldUseSharedWorkingMemory;
    da_dWorldCleanupWorkingMemory dWorldCleanupWorkingMemory;
    da_dWorldSetStepMemoryReservationPolicy dWorldSetStepMemoryReservationPolicy;
    da_dWorldSetStepMemoryManager dWorldSetStepMemoryManager;
    da_dWorldStep dWorldStep;
    da_dWorldImpulseToForce dWorldImpulseToForce;
    da_dWorldQuickStep dWorldQuickStep;
    da_dWorldSetQuickStepNumIterations dWorldSetQuickStepNumIterations;
    da_dWorldGetQuickStepNumIterations dWorldGetQuickStepNumIterations;
    da_dWorldSetQuickStepW dWorldSetQuickStepW;
    da_dWorldGetQuickStepW dWorldGetQuickStepW;
    da_dWorldSetContactMaxCorrectingVel dWorldSetContactMaxCorrectingVel;
    da_dWorldGetContactMaxCorrectingVel dWorldGetContactMaxCorrectingVel;
    da_dWorldSetContactSurfaceLayer dWorldSetContactSurfaceLayer;
    da_dWorldGetContactSurfaceLayer dWorldGetContactSurfaceLayer;
    da_dWorldGetAutoDisableLinearThreshold dWorldGetAutoDisableLinearThreshold;
    da_dWorldSetAutoDisableLinearThreshold dWorldSetAutoDisableLinearThreshold;
    da_dWorldGetAutoDisableAngularThreshold dWorldGetAutoDisableAngularThreshold;
    da_dWorldSetAutoDisableAngularThreshold dWorldSetAutoDisableAngularThreshold;
    da_dWorldGetAutoDisableAverageSamplesCount dWorldGetAutoDisableAverageSamplesCount;
    da_dWorldSetAutoDisableAverageSamplesCount dWorldSetAutoDisableAverageSamplesCount;
    da_dWorldGetAutoDisableSteps dWorldGetAutoDisableSteps;
    da_dWorldSetAutoDisableSteps dWorldSetAutoDisableSteps;
    da_dWorldGetAutoDisableTime dWorldGetAutoDisableTime;
    da_dWorldSetAutoDisableTime dWorldSetAutoDisableTime;
    da_dWorldGetAutoDisableFlag dWorldGetAutoDisableFlag;
    da_dWorldSetAutoDisableFlag dWorldSetAutoDisableFlag;
    da_dWorldGetLinearDampingThreshold dWorldGetLinearDampingThreshold;
    da_dWorldSetLinearDampingThreshold dWorldSetLinearDampingThreshold;
    da_dWorldGetAngularDampingThreshold dWorldGetAngularDampingThreshold;
    da_dWorldSetAngularDampingThreshold dWorldSetAngularDampingThreshold;
    da_dWorldGetLinearDamping dWorldGetLinearDamping;
    da_dWorldSetLinearDamping dWorldSetLinearDamping;
    da_dWorldGetAngularDamping dWorldGetAngularDamping;
    da_dWorldSetAngularDamping dWorldSetAngularDamping;
    da_dWorldSetDamping dWorldSetDamping;
    da_dWorldGetMaxAngularSpeed dWorldGetMaxAngularSpeed;
    da_dWorldSetMaxAngularSpeed dWorldSetMaxAngularSpeed;
    da_dBodyGetAutoDisableLinearThreshold dBodyGetAutoDisableLinearThreshold;
    da_dBodySetAutoDisableLinearThreshold dBodySetAutoDisableLinearThreshold;
    da_dBodyGetAutoDisableAngularThreshold dBodyGetAutoDisableAngularThreshold;
    da_dBodySetAutoDisableAngularThreshold dBodySetAutoDisableAngularThreshold;
    da_dBodyGetAutoDisableAverageSamplesCount dBodyGetAutoDisableAverageSamplesCount;
    da_dBodySetAutoDisableAverageSamplesCount dBodySetAutoDisableAverageSamplesCount;
    da_dBodyGetAutoDisableSteps dBodyGetAutoDisableSteps;
    da_dBodySetAutoDisableSteps dBodySetAutoDisableSteps;
    da_dBodyGetAutoDisableTime dBodyGetAutoDisableTime;
    da_dBodySetAutoDisableTime dBodySetAutoDisableTime;
    da_dBodyGetAutoDisableFlag dBodyGetAutoDisableFlag;
    da_dBodySetAutoDisableFlag dBodySetAutoDisableFlag;
    da_dBodySetAutoDisableDefaults dBodySetAutoDisableDefaults;
    da_dBodyGetWorld dBodyGetWorld;
    da_dBodyCreate dBodyCreate;
    da_dBodyDestroy dBodyDestroy;
    da_dBodySetData dBodySetData;
    da_dBodyGetData dBodyGetData;
    da_dBodySetPosition dBodySetPosition;
    da_dBodySetRotation dBodySetRotation;
    da_dBodySetQuaternion dBodySetQuaternion;
    da_dBodySetLinearVel dBodySetLinearVel;
    da_dBodySetAngularVel dBodySetAngularVel;
    da_dBodyGetPosition dBodyGetPosition;
    da_dBodyCopyPosition dBodyCopyPosition;
    da_dBodyGetRotation dBodyGetRotation;
    da_dBodyCopyRotation dBodyCopyRotation;
    da_dBodyGetQuaternion dBodyGetQuaternion;
    da_dBodyCopyQuaternion dBodyCopyQuaternion;
    da_dBodyGetLinearVel dBodyGetLinearVel;
    da_dBodyGetAngularVel dBodyGetAngularVel;
    da_dBodySetMass dBodySetMass;
    da_dBodyGetMass dBodyGetMass;
    da_dBodyAddForce dBodyAddForce;
    da_dBodyAddTorque dBodyAddTorque;
    da_dBodyAddRelForce dBodyAddRelForce;
    da_dBodyAddRelTorque dBodyAddRelTorque;
    da_dBodyAddForceAtPos dBodyAddForceAtPos;
    da_dBodyAddForceAtRelPos dBodyAddForceAtRelPos;
    da_dBodyAddRelForceAtPos dBodyAddRelForceAtPos;
    da_dBodyAddRelForceAtRelPos dBodyAddRelForceAtRelPos;
    da_dBodyGetForce dBodyGetForce;
    da_dBodyGetTorque dBodyGetTorque;
    da_dBodySetForce dBodySetForce;
    da_dBodySetTorque dBodySetTorque;
    da_dBodyGetRelPointPos dBodyGetRelPointPos;
    da_dBodyGetRelPointVel dBodyGetRelPointVel;
    da_dBodyGetPointVel dBodyGetPointVel;
    da_dBodyGetPosRelPoint dBodyGetPosRelPoint;
    da_dBodyVectorToWorld dBodyVectorToWorld;
    da_dBodyVectorFromWorld dBodyVectorFromWorld;
    da_dBodySetFiniteRotationMode dBodySetFiniteRotationMode;
    da_dBodySetFiniteRotationAxis dBodySetFiniteRotationAxis;
    da_dBodyGetFiniteRotationMode dBodyGetFiniteRotationMode;
    da_dBodyGetFiniteRotationAxis dBodyGetFiniteRotationAxis;
    da_dBodyGetNumJoints dBodyGetNumJoints;
    da_dBodyGetJoint dBodyGetJoint;
    da_dBodySetDynamic dBodySetDynamic;
    da_dBodySetKinematic dBodySetKinematic;
    da_dBodyIsKinematic dBodyIsKinematic;
    da_dBodyEnable dBodyEnable;
    da_dBodyDisable dBodyDisable;
    da_dBodyIsEnabled dBodyIsEnabled;
    da_dBodySetGravityMode dBodySetGravityMode;
    da_dBodyGetGravityMode dBodyGetGravityMode;
    da_dBodySetMovedCallback dBodySetMovedCallback;
    da_dBodyGetFirstGeom dBodyGetFirstGeom;
    da_dBodyGetNextGeom dBodyGetNextGeom;
    da_dBodySetDampingDefaults dBodySetDampingDefaults;
    da_dBodyGetLinearDamping dBodyGetLinearDamping;
    da_dBodySetLinearDamping dBodySetLinearDamping;
    da_dBodyGetAngularDamping dBodyGetAngularDamping;
    da_dBodySetAngularDamping dBodySetAngularDamping;
    da_dBodySetDamping dBodySetDamping;
    da_dBodyGetLinearDampingThreshold dBodyGetLinearDampingThreshold;
    da_dBodySetLinearDampingThreshold dBodySetLinearDampingThreshold;
    da_dBodyGetAngularDampingThreshold dBodyGetAngularDampingThreshold;
    da_dBodySetAngularDampingThreshold dBodySetAngularDampingThreshold;
    da_dBodyGetMaxAngularSpeed dBodyGetMaxAngularSpeed;
    da_dBodySetMaxAngularSpeed dBodySetMaxAngularSpeed;
    da_dBodyGetGyroscopicMode dBodyGetGyroscopicMode;
    da_dBodySetGyroscopicMode dBodySetGyroscopicMode;
    da_dJointCreateBall dJointCreateBall;
    da_dJointCreateHinge dJointCreateHinge;
    da_dJointCreateSlider dJointCreateSlider;
    da_dJointCreateContact dJointCreateContact;
    da_dJointCreateHinge2 dJointCreateHinge2;
    da_dJointCreateUniversal dJointCreateUniversal;
    da_dJointCreatePR dJointCreatePR;
    da_dJointCreatePU dJointCreatePU;
    da_dJointCreatePiston dJointCreatePiston;
    da_dJointCreateFixed dJointCreateFixed;
    da_dJointCreateNull dJointCreateNull;
    da_dJointCreateAMotor dJointCreateAMotor;
    da_dJointCreateLMotor dJointCreateLMotor;
    da_dJointCreatePlane2D dJointCreatePlane2D;
    da_dJointDestroy dJointDestroy;
    da_dJointGroupCreate dJointGroupCreate;
    da_dJointGroupDestroy dJointGroupDestroy;
    da_dJointGroupEmpty dJointGroupEmpty;
    da_dJointGetNumBodies dJointGetNumBodies;
    da_dJointAttach dJointAttach;
    da_dJointEnable dJointEnable;
    da_dJointDisable dJointDisable;
    da_dJointIsEnabled dJointIsEnabled;
    da_dJointSetData dJointSetData;
    da_dJointGetData dJointGetData;
    da_dJointGetType dJointGetType;
    da_dJointGetBody dJointGetBody;
    da_dJointSetFeedback dJointSetFeedback;
    da_dJointGetFeedback dJointGetFeedback;
    da_dJointSetBallAnchor dJointSetBallAnchor;
    da_dJointSetBallAnchor2 dJointSetBallAnchor2;
    da_dJointSetBallParam dJointSetBallParam;
    da_dJointSetHingeAnchor dJointSetHingeAnchor;
    da_dJointSetHingeAnchorDelta dJointSetHingeAnchorDelta;
    da_dJointSetHingeAxis dJointSetHingeAxis;
    da_dJointSetHingeAxisOffset dJointSetHingeAxisOffset;
    da_dJointSetHingeParam dJointSetHingeParam;
    da_dJointAddHingeTorque dJointAddHingeTorque;
    da_dJointSetSliderAxis dJointSetSliderAxis;
    da_dJointSetSliderAxisDelta dJointSetSliderAxisDelta;
    da_dJointSetSliderParam dJointSetSliderParam;
    da_dJointAddSliderForce dJointAddSliderForce;
    da_dJointSetHinge2Anchor dJointSetHinge2Anchor;
    da_dJointSetHinge2Axis1 dJointSetHinge2Axis1;
    da_dJointSetHinge2Axis2 dJointSetHinge2Axis2;
    da_dJointSetHinge2Param dJointSetHinge2Param;
    da_dJointAddHinge2Torques dJointAddHinge2Torques;
    da_dJointSetUniversalAnchor dJointSetUniversalAnchor;
    da_dJointSetUniversalAxis1 dJointSetUniversalAxis1;
    da_dJointSetUniversalAxis1Offset dJointSetUniversalAxis1Offset;
    da_dJointSetUniversalAxis2 dJointSetUniversalAxis2;
    da_dJointSetUniversalAxis2Offset dJointSetUniversalAxis2Offset;
    da_dJointSetUniversalParam dJointSetUniversalParam;
    da_dJointAddUniversalTorques dJointAddUniversalTorques;
    da_dJointSetPRAnchor dJointSetPRAnchor;
    da_dJointSetPRAxis1 dJointSetPRAxis1;
    da_dJointSetPRAxis2 dJointSetPRAxis2;
    da_dJointSetPRParam dJointSetPRParam;
    da_dJointAddPRTorque dJointAddPRTorque;
    da_dJointSetPUAnchor dJointSetPUAnchor;
    da_dJointSetPUAnchorOffset dJointSetPUAnchorOffset;
    da_dJointSetPUAxis1 dJointSetPUAxis1;
    da_dJointSetPUAxis2 dJointSetPUAxis2;
    da_dJointSetPUAxis3 dJointSetPUAxis3;
    da_dJointSetPUAxisP dJointSetPUAxisP;
    da_dJointSetPUParam dJointSetPUParam;
    da_dJointSetPistonAnchor dJointSetPistonAnchor;
    da_dJointSetPistonAnchorOffset dJointSetPistonAnchorOffset;
    da_dJointSetPistonAxis dJointSetPistonAxis;
    da_dJointSetPistonParam dJointSetPistonParam;
    da_dJointAddPistonForce dJointAddPistonForce;
    da_dJointSetFixed dJointSetFixed;
    da_dJointSetFixedParam dJointSetFixedParam;
    da_dJointSetAMotorNumAxes dJointSetAMotorNumAxes;
    da_dJointSetAMotorAxis dJointSetAMotorAxis;
    da_dJointSetAMotorAngle dJointSetAMotorAngle;
    da_dJointSetAMotorParam dJointSetAMotorParam;
    da_dJointSetAMotorMode dJointSetAMotorMode;
    da_dJointAddAMotorTorques dJointAddAMotorTorques;
    da_dJointSetLMotorNumAxes dJointSetLMotorNumAxes;
    da_dJointSetLMotorAxis dJointSetLMotorAxis;
    da_dJointSetLMotorParam dJointSetLMotorParam;
    da_dJointSetPlane2DXParam dJointSetPlane2DXParam;
    da_dJointSetPlane2DYParam dJointSetPlane2DYParam;
    da_dJointSetPlane2DAngleParam dJointSetPlane2DAngleParam;
    da_dJointGetBallAnchor dJointGetBallAnchor;
    da_dJointGetBallAnchor2 dJointGetBallAnchor2;
    da_dJointGetBallParam dJointGetBallParam;
    da_dJointGetHingeAnchor dJointGetHingeAnchor;
    da_dJointGetHingeAnchor2 dJointGetHingeAnchor2;
    da_dJointGetHingeAxis dJointGetHingeAxis;
    da_dJointGetHingeParam dJointGetHingeParam;
    da_dJointGetHingeAngle dJointGetHingeAngle;
    da_dJointGetHingeAngleRate dJointGetHingeAngleRate;
    da_dJointGetSliderPosition dJointGetSliderPosition;
    da_dJointGetSliderPositionRate dJointGetSliderPositionRate;
    da_dJointGetSliderAxis dJointGetSliderAxis;
    da_dJointGetSliderParam dJointGetSliderParam;
    da_dJointGetHinge2Anchor dJointGetHinge2Anchor;
    da_dJointGetHinge2Anchor2 dJointGetHinge2Anchor2;
    da_dJointGetHinge2Axis1 dJointGetHinge2Axis1;
    da_dJointGetHinge2Axis2 dJointGetHinge2Axis2;
    da_dJointGetHinge2Param dJointGetHinge2Param;
    da_dJointGetHinge2Angle1 dJointGetHinge2Angle1;
    da_dJointGetHinge2Angle1Rate dJointGetHinge2Angle1Rate;
    da_dJointGetHinge2Angle2Rate dJointGetHinge2Angle2Rate;
    da_dJointGetUniversalAnchor dJointGetUniversalAnchor;
    da_dJointGetUniversalAnchor2 dJointGetUniversalAnchor2;
    da_dJointGetUniversalAxis1 dJointGetUniversalAxis1;
    da_dJointGetUniversalAxis2 dJointGetUniversalAxis2;
    da_dJointGetUniversalParam dJointGetUniversalParam;
    da_dJointGetUniversalAngles dJointGetUniversalAngles;
    da_dJointGetUniversalAngle1 dJointGetUniversalAngle1;
    da_dJointGetUniversalAngle2 dJointGetUniversalAngle2;
    da_dJointGetUniversalAngle1Rate dJointGetUniversalAngle1Rate;
    da_dJointGetUniversalAngle2Rate dJointGetUniversalAngle2Rate;
    da_dJointGetPRAnchor dJointGetPRAnchor;
    da_dJointGetPRPosition dJointGetPRPosition;
    da_dJointGetPRPositionRate dJointGetPRPositionRate;
    da_dJointGetPRAngle dJointGetPRAngle;
    da_dJointGetPRAngleRate dJointGetPRAngleRate;
    da_dJointGetPRAxis1 dJointGetPRAxis1;
    da_dJointGetPRAxis2 dJointGetPRAxis2;
    da_dJointGetPRParam dJointGetPRParam;
    da_dJointGetPUAnchor dJointGetPUAnchor;
    da_dJointGetPUPosition dJointGetPUPosition;
    da_dJointGetPUPositionRate dJointGetPUPositionRate;
    da_dJointGetPUAxis1 dJointGetPUAxis1;
    da_dJointGetPUAxis2 dJointGetPUAxis2;
    da_dJointGetPUAxis3 dJointGetPUAxis3;
    da_dJointGetPUAxisP dJointGetPUAxisP;
    da_dJointGetPUAngles dJointGetPUAngles;
    da_dJointGetPUAngle1 dJointGetPUAngle1;
    da_dJointGetPUAngle1Rate dJointGetPUAngle1Rate;
    da_dJointGetPUAngle2 dJointGetPUAngle2;
    da_dJointGetPUAngle2Rate dJointGetPUAngle2Rate;
    da_dJointGetPUParam dJointGetPUParam;
    da_dJointGetPistonPosition dJointGetPistonPosition;
    da_dJointGetPistonPositionRate dJointGetPistonPositionRate;
    da_dJointGetPistonAngle dJointGetPistonAngle;
    da_dJointGetPistonAngleRate dJointGetPistonAngleRate;
    da_dJointGetPistonAnchor dJointGetPistonAnchor;
    da_dJointGetPistonAnchor2 dJointGetPistonAnchor2;
    da_dJointGetPistonAxis dJointGetPistonAxis;
    da_dJointGetPistonParam dJointGetPistonParam;
    da_dJointGetAMotorNumAxes dJointGetAMotorNumAxes;
    da_dJointGetAMotorAxis dJointGetAMotorAxis;
    da_dJointGetAMotorAxisRel dJointGetAMotorAxisRel;
    da_dJointGetAMotorAngle dJointGetAMotorAngle;
    da_dJointGetAMotorAngleRate dJointGetAMotorAngleRate;
    da_dJointGetAMotorParam dJointGetAMotorParam;
    da_dJointGetAMotorMode dJointGetAMotorMode;
    da_dJointGetLMotorNumAxes dJointGetLMotorNumAxes;
    da_dJointGetLMotorAxis dJointGetLMotorAxis;
    da_dJointGetLMotorParam dJointGetLMotorParam;
    da_dJointGetFixedParam dJointGetFixedParam;
    da_dConnectingJoint dConnectingJoint;
    da_dConnectingJointList dConnectingJointList;
    da_dAreConnected dAreConnected;
    da_dAreConnectedExcluding dAreConnectedExcluding;
    da_dInitODE dInitODE;
    da_dInitODE2 dInitODE2;
    da_dAllocateODEDataForThread dAllocateODEDataForThread;
    da_dCleanupODEAllDataForThread dCleanupODEAllDataForThread;
    da_dCloseODE dCloseODE;
    da_dSafeNormalize3 dSafeNormalize3;
    da_dSafeNormalize4 dSafeNormalize4;
    da_dNormalize3 dNormalize3;
    da_dNormalize4 dNormalize4;
    da_dPlaneSpace dPlaneSpace;
    da_dOrthogonalizeR dOrthogonalizeR;
    da_dRSetIdentity dRSetIdentity;
    da_dRFromAxisAndAngle dRFromAxisAndAngle;
    da_dRFromEulerAngles dRFromEulerAngles;
    da_dRFrom2Axes dRFrom2Axes;
    da_dRFromZAxis dRFromZAxis;
    da_dQSetIdentity dQSetIdentity;
    da_dQFromAxisAndAngle dQFromAxisAndAngle;
    da_dQMultiply0 dQMultiply0;
    da_dQMultiply1 dQMultiply1;
    da_dQMultiply2 dQMultiply2;
    da_dQMultiply3 dQMultiply3;
    da_dRfromQ dRfromQ;
    da_dQfromR dQfromR;
    da_dDQfromW dDQfromW;
    da_dStopwatchReset dStopwatchReset;
    da_dStopwatchStart dStopwatchStart;
    da_dStopwatchStop dStopwatchStop;
    da_dStopwatchTime dStopwatchTime;
    da_dTimerStart dTimerStart;
    da_dTimerNow dTimerNow;
    da_dTimerEnd dTimerEnd;
    da_dTimerReport dTimerReport;
    da_dTimerTicksPerSecond dTimerTicksPerSecond;
    da_dTimerResolution dTimerResolution;
}

alias dCreateCapsule dCreateCCylinder;
alias dGeomCapsuleSetParams dGeomCCylinderSetParams;
alias dGeomCapsuleGetParams dGeomCCylinderGetParams;
alias dGeomCapsulePointDepth dGeomCCylinderPointDepth;
